package entidades;

import java.io.Serializable;
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;

/**
 *
 * @author Marcelo Gomes Neto
 */
public class UnidadeMilitar implements Serializable {
    
    private static final long serialVersionUID = 7875528528617950231L;
    private Integer idunidade;
    private String siglaOM;
    private String descricao;
    //private List<Setor> setor;
    private Set<Setor> setor = new HashSet<>();

    public UnidadeMilitar() {}
    
    public Integer getIdunidade() {
        return idunidade;
    }

    public void setIdunidade(Integer idunidade) {
        this.idunidade = idunidade;
    }

    public String getSiglaOM() {
        return siglaOM;
    }

    public void setSiglaOM(String siglaOM) {
        this.siglaOM = siglaOM;
    }
    
    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public Set<Setor> getSetor() {
        return setor;
    }

    public void setSetor(Set<Setor> setor) {
        this.setor = setor;
    }

    @Override
    public int hashCode() 
    {
        int hash = 7;
        hash = 29 * hash + Objects.hashCode(this.idunidade);
        hash = 29 * hash + Objects.hashCode(this.siglaOM);
        hash = 29 * hash + Objects.hashCode(this.descricao);
        hash = 29 * hash + Objects.hashCode(this.setor);
        return hash;
    }

    @Override
    public boolean equals(Object obj) 
    {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final UnidadeMilitar other = (UnidadeMilitar) obj;
        if (!Objects.equals(this.idunidade, other.idunidade)) {
            return false;
        }
        if (!Objects.equals(this.siglaOM, other.siglaOM)) {
            return false;
        }
        if (!Objects.equals(this.descricao, other.descricao)) {
            return false;
        }
        if (!Objects.equals(this.setor, other.setor)) {
            return false;
        }
        return true;
    }
}